1. Field of the Invention
The present invention relates to a system and method for dynamically disabling the resubmission of HyperText Transfer Protocol (HTTP) requests. More specifically, the present invention relates to a system and method for dynamically disabling the resubmission of HTTP requests using a client-side script.
2. Description of Related Art
For many web sites, resubmitting an HTTP request may not be desirable. For example, if an HTTP request relating to a particular e-commerce web page is submitted twice, it may not be clear whether the user intended to transmit a second a request (e.g., order two items), modify a first request (e.g., request a second product instead of the first product), or ensure that the first request was received (e.g., only one product desired).
Conventional systems and methods exist for preventing a resubmission of an HTTP request. A control, such as the back button, may be concealed in order to prevent a user from returning to a particular web page. However, this technique may be overcome by manipulating by right-clicking within a web-browser window and selecting the “Back” command.
Additionally, some systems may attempt to prevent resubmissions by forcing the expiration of a particular web page by using a “Pragma: No-Cache” tag. A “Pragma: No-Cache” tag is designed to prevent a browser from maintaining a copy of the document in cache. However, it may be desirable to enable a user to return to particular page. For example, the user may want to manipulate a control that is unrelated to the request (e.g., a link to an advertiser's home page or another control that is unrelated to the submitted transaction) or review the page from which the HTTP request was generated (e.g., determine a price or shipment date for a transaction). Additionally, some browsers do not properly support the “Pragma: No-Cache” functionality under certain conditions (e.g., Internet Explorer fails to implement the functionality properly when a requested document is greater than 64 KB).
Similarly, some systems may attempt to prevent HTTP request resubmissions by programmatically determining that a particular page has been previously submitted by using a unique key with each page. This technique, however, requires a request of and response from the server, thereby placing a heavier burden on the server and increasing the wait-time for the client.